将自建ClickHouse数据迁移到云ClickHouse中 您所在的位置:网站首页 clickhouse client 读大量数据 将自建ClickHouse数据迁移到云ClickHouse中

将自建ClickHouse数据迁移到云ClickHouse中

2024-07-08 20:19| 来源: 网络整理| 查看: 265

Q:如何处理报错:“Too many partitions for single INSERT block (more than 100)”?

A:单个INSERT操作中超过了max_partitions_per_insert_block(最大分区插入块,默认值为100)。ClickHouse每次写入都会生成一个data part(数据部分),一个分区可能包含一个或多个data part,如果单个INSERT操作中插入了太多分区的数据,那会造成ClickHouse内部有大量的data part(会给合并和查询造成很大的负担)。为了防止出现大量的data part,ClickHouse内部做了限制。

解决方案:请执行以下操作,调整分区数或者max_partitions_per_insert_block参数。

调整表结构,调整分区方式,或避免单次插入的不同分区数超过限制。

避免单次插入的不同分区数超过限制,可根据数据量适当修改max_partitions_per_insert_block参数,放大单个插入的不同分区数限制,修改语法如下:

SET GLOBAL ON cluster DEFAULT max_partitions_per_insert_block = XXX;说明

ClickHouse社区推荐默认值为100,分区数不要设置得过大,否则可能对性能产生影响。在批量导入数据后可修改值为默认值。

Q:为什么目标实例云数据库ClickHouse连接自建数据库ClickHouse连接失败?

A:可能是您的自建数据库ClickHouse设置了防火墙或白名单等操作。可以在云数据库ClickHouse控制台查看云数据库ClickHouse的VPC网络,并且将该VPC的整个网段都加入到自建数据库ClickHouse的白名单中。如果希望控制白名单的网段范围,避免潜在安全问题,那么可以通过如下SQL查询到目标实例云数据库ClickHouse的后台Server IP,只将这几个IP加入自建实例的白名单中。

SELECT * FROM system.clusters;


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有